想了解更多有關Mob programming的知識?推薦你來看由本系列改寫出版的《Agile一本通!敏捷新手入門導引》
不用打群架也可以擁有 >> https://www.books.com.tw/products/0010968755
「Mob programming?這是什麼?」灰貓看著技術文章,發現了這個酷酷的東西。
由於英文程度不太好,他先是查了mob這個字,意思是「暴民」。
雖然有聽過隔壁部門同事帶斧頭來上班,不過團隊成員遇到瓶頸,也頂多小聲問候對方家人,大多數時間都是和善的紳士淑女,很難想像一群暴民怎麼靜下心來寫程式?
「同時間不限人數,使用同一台電腦同時作業?」灰貓越查越好奇,這麼多人同時開發,真的有效率嗎?內向的灰貓,想著如果有這麼多人看著自己寫程式,自己一定會緊張得腦袋空白。
群體程式設計(Mob programming)
群體程式設計是結對程式設計的延伸,結對程式設計限定兩人於同一電腦作業,群體程式設計則不限人數。整個團隊同時開發系統的同一部分,例如所有人同時開發UI、同時開發API,團隊成員每個人同時間都發揮他自己最擅長的部份。
角色與結對程式設計一樣,有司機(driver)與導航員(navigator),由司機操作電腦(把操作畫面投影到大銀幕或螢幕分享,讓大家都可以看的到開發畫面),當司機不知道怎麼做時,導航員可以立即給予指導,發現問題時也能立即討論。即使是新人也能藉由這個過程學習到各部分,其他成員也能加強自己的能力。
因為團隊成員能立即被找到,就能省去確認/詢問產生的等待時間;因為團隊成員同時參與開發,在功能完成前就能發現問題並有共識的解決。
群體程式設計的好處
今天的參考資料/延伸閱讀: